package hello

import "fmt"

func ForTest() {
	fmt.Println("------------ For Loop() --------------")
	sum := 0
	for i := 0; i <= 10; i++ {
		sum += i
		fmt.Printf("sum[%d]= %d\n", i, sum)
	}
	fmt.Println(sum)

	// 这样写也可以，更像 While 语句形式
	sum = 2
	i := 0
	for sum <= 100 {
		sum += sum
		i++

		if sum == 16 {
			/* 跳过此次循环 */
			fmt.Println("continue ,  not do after")
			continue
		}

		if sum == 32 {
			/* 跳过迭代 */
			fmt.Println("goto XXXX ")
			goto LOOP
		}

		fmt.Printf("sum2[%d]= %d\n", i, sum)
	LOOP:
		fmt.Printf("...\n")

		if sum > 49 {
			/* 使用 break 语句跳出循环 */
			fmt.Println("break here")
			break
		}
	}
	fmt.Println(sum)

	// ---- for each ------------------------
	strings := []string{"google", "run oob"}
	for i, s := range strings {
		fmt.Println(i, s)
	}

	numbers := [6]int{1, 2, 3, 5}
	for i, x := range numbers {
		fmt.Printf("第 %d 位 x 的值 = %d\n", i, x)
	}
}
